package com.mdd.common.util.weifengqi.authorize;

import com.alibaba.fastjson.JSONObject;
import com.mdd.common.util.HttpUtils;
import com.mdd.common.util.ToolUtils;
import com.mdd.common.util.weifengqi.encryptionPassword.AESUtils;
import lombok.extern.slf4j.Slf4j;

import java.io.UnsupportedEncodingException;

/**
 * 微风企授权全部报告
 */
@Slf4j
public class AuthorizeMaxUtil {

    //请求路径
    public static final String url = "https://www.wfq2020.com/authorization/?channelCode=ts5lf";
    //渠道身份
    public static final String channelCode="ts5lf";
    //微风企获取企业原数据授权回调地址
    public static final String cburl="http://baidu.com";

    public static void createParam(String companyName) {
        //message加密信息
        String messagePassword="";
        JSONObject message = new JSONObject();
        String orderNo = ToolUtils.randomString(36);
        message.put("orderNo", orderNo);
//        typeWay为空：（taxpayerId、companyName）必填其一
//        typeWay为1：authenticationMsg对象值必填（cognizantMobile 、cognizantName）
//        typeWay为2：firms数组必填 内部对象必填其一（companyName or taxpayerId）
//        typeWay为3：firms数组必填 内部对象必填其一（companyName or taxpayerId）且
//        authenticationMsg对象值必填（cognizantMobile 、cognizantName）
//        message.put("typeWay", null);
        message.put("companyName", companyName);
        try {
            messagePassword = AESUtils.encryptForSys(message);
        } catch (UnsupportedEncodingException e) {
            log.warn("加密失败", e);
            throw new RuntimeException(e);
        }
        log.warn("本次订单号为："+orderNo);
        log.warn("本次公司名称为："+companyName);
        System.out.println("本次订单号为："+orderNo);
        System.out.println("本次公司名称为："+companyName);
        authorize(messagePassword);

    }

    public static void authorize(String messagePassword){
        //组装参数
        StringBuffer buffer = new StringBuffer().append(url)
//                .append("&channelCode=").append(channelCode)
                .append("&cburl=").append(cburl)
                .append("&message=").append(messagePassword);
        log.warn("加密信息为："+messagePassword);
        log.warn("请求路劲地址为："+buffer.toString());
        System.out.println("加密信息为："+messagePassword);
        System.out.println("请求路劲地址为："+buffer.toString());

        String result = HttpUtils.sendGet(buffer.toString());
        System.out.println(result);
    }

//羊羊领企（北京）科技有限公司   91110108MAD7M0YM3Q     杨熙云   612724199803212118
    public static void main(String[] args) {
//        createParam("北京共融联创科技有限公司");
        createParam("北京宠旺角宠物用品有限公司");

    }

}
